pin = function(){
	__this = this;
	__this.loading = true;
	__this.allBoxH = [];
	// 初始化pin类
	__this.init = function(){
		//alert('ddd');
		__this.sort();
		//鼠标事件
		__this.mouseEvent();
		//滚动事件
		__this.scrollBar();
	};
	//鼠标事件
	__this.mouseEvent = function() {
		$(".pin").mouseover(function() {
			$(this).find(".actions").css('display', 'block');
		});
		$(".pin").mouseout(function() {
			$(this).find(".actions").css('display', 'none');
		});
		$("#nav_login").mouseover(function() {
			$(this).find("ul").css('display', 'block');
		});
		$("#nav_login").mouseout(function() {
			$(this).find("ul").css('display', 'none');
		});
		$("#nav_about").mouseover(function() {
			$(this).find("ul").css('display', 'block');
		});
		$("#nav_about").mouseout(function() {
			$(this).find("ul").css('display', 'none');
		});
		$("#nav_mobile").mouseover(function() {
			$(this).find("ul").css('display', 'block');
		});
		$("#nav_mobile").mouseout(function() {
			$(this).find("ul").css('display', 'none');
		});
	};
	//滚动事件
	__this.scrollBar = function() {
		$(window).scroll(function(e) {
			var docH = $(document).height();
			var wH = $(window).height();
			var scrollTopH = $(this).scrollTop();
			if(scrollTopH>200) {
				$("#elevator").removeClass('off');
			} else {
				$("#elevator").addClass('off');
			}
			//$("#scroll").text(__this.loading);
			if (scrollTopH >= docH - wH && __this.loading == true)
			{
				loadingH = $(".loading").height();
				//$(".loading").css('position','absolute');
				$(".loading").css('top', (docH - wH +loadingH + 10 )  + 'px');
				//$(".loading").css('left', ( $(docment).width() - $(".loading").width() ) / 2+$(window).scrollLeft() + 'px');
				$(".loading").css('display', 'block');
				__this.loading = false;
			}
		});
		$("#elevator").click(function(){
			$('html,body').animate({scrollTop: '0px'}, 500);
		});
	};
	//瀑布排版
	__this.sort = function(){
		var maxN = 4;//最大PIN数
		var box = $("#waterfall > .pin");
		//alert( box.length);
		var minH = box[0].offsetHeight,
		boxW = box[0].offsetWidth,
		boxH,
		screenW = $(window).width();
		n = screenW / boxW | 0; //计算页面能排下多少Pin
		n = n > maxN?maxN:n;
		var midW = 15;
		var firstW = (screenW - (midW *(n - 1) + n * boxW))/2 | 0;
		for(var i = 0; i < box.length; i++) {
			boxh = box[i].offsetHeight; //获取每个Pin的高度
			if(i < n) { //第一行Pin以浮动排列，不需绝对定位
				__this.allBoxH[i] = boxh;
				box[i].style.position = '';
				box[i].style.top = '0px';
				leftn = i * (boxW + midW) + firstW;
				box[i].style.left = leftn + 'px';
			} else {
				minH = Math.min.apply({},__this.allBoxH); //取得各列累计高度最低的一列
				minKey = __this.getarraykey(__this.allBoxH, minH);
				__this.allBoxH[minKey] += boxh + 10; //加上新高度后更新高度值
				box[i].style.position = 'absolute';
				box[i].style.top = minH + 'px';
				leftn = minKey * (boxW + midW) + firstW;
				box[i].style.left = leftn + 'px';
			}
		}
	};

	/* 返回数组中某一值的对应项数 */
	__this.getarraykey = function (s, v) {
		for(k in s) {
			if(s[k] == v) {
				return k;
			}
		}
	};
	//显示收藏
};